package org.programmers.anonymous.fightrobots.dao;

import java.util.List;

import org.programmers.anonymous.fightrobots.model.IWeapon;

/**
 * WeaponDao Interface
 * 
 * @author Daniel Cruz, Francisco Villalba
 *
 */
public interface IWeaponDao {
	
	/**
	 * Stores the weapon on the DB.
	 * @param w - The weapon
	 * @return - The stored weapon id
	 */
	public int save(IWeapon w);
	
	/**
	 * Loads a weapon from the DB
	 * @param Id
	 * @return
	 */
	public IWeapon loadWeapon(int Id);
	
	/**
	 * Deletes a weapon stored on the DB
	 * @param w - The weapon to delete
	 * @return 
	 */
	public boolean delete(IWeapon w);
	
	/**
	 * Returns the list of stored weapons
	 * @return
	 */
	public List<IWeapon> getWeaponList();
	
	/**
	 * 
	 */
	public void deleteAllWeapons();





}
